merge next-elimBE-new-mri-filter with next-elimBE-new-mri - #4
Merged
Merged
Conversation
`CoordinatesAccessor` and non-uniform geometry quantities depend on cell spacing. Reset cache so they are updated when needed. Bxy is not calculated on demand, so is calculated in `set*MetricTensor` methods.
z index should be in range. Indexed accessors return BoutReal, not reference to field.
Convert input to Field3DParallel before dividing by Bxy, to ensure that yup/ydown fields are retained.
Should now be consistent with `next` branch. Avoids calculation of parallel slices for derived metric quantities.
Makes lazy getters thread-safe by adding named critical sections. Named so that nested sections (code in critical section calling a function that also contains a critical section) doesn't lead to deadlock.
This was an experiment in expression templates, that has now been replaced by the BinaryExpr machinery.
Views handle yup/ydown slices, evaluating lazy expressions in parallel slices if assigned to a Field3DParallel.
To make it reusable
Implement some clang-tidy suggestions, use FakeMeshFixtureFCI for tests with FCI parallel transform.
More unit tests
…with C++17 initializer syntax
If the parallel transform is not FCI then parallel slices are not calculated on assignment to Field3DParallel.
Makes the `floor` function lazy, so it can be inlined into template expressions.
Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 5 to 7. - [Release notes](https://github.com/astral-sh/setup-uv/releases) - [Commits](astral-sh/setup-uv@v5...v7) --- updated-dependencies: - dependency-name: astral-sh/setup-uv dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
Arithmetic operators now use the lazy `BinaryExpr` expressions.
Remove unnecessary data members that dublicate the Field3D::View base.
NVCC doesn't accept `Array<int, ArrayData<int>>` as `C<scalar>` so treats ConvertContainer<Array...> as partially specialized. This explicitly writes convertors for Array, Matrix and Tensor containers.
fmt uses `begin` rather than `std::begin` so that NVCC fails to find an overload for `char[]` literals.
Calls `Array::size()` that accesses a shared pointer to `ArrayData`. Doesn't need to be a device function since called outside kernel.
- Remove default arguments for fv_ops specializations - Use base class functions rather than partial overload
MeshFactory::create read mesh from data directory
Provides an error message if arkode_mri solver is requested but BOUT++ was built with a version of SUNDIALS lower than 7.2.0
PhysicsModel now has fast and slow preconditioners, and these can be called by the Arkode MRI solver.
Previous use of ARKStepGetNumRhsEvals is deprecated from SUNDIALS 7.2.0, replaced by ARKodeGetNumRhsEvals https://github.com/LLNL/sundials/blob/main/CHANGELOG.md#deprecation-notices
Rather than calling `ARKodeGetCurrentStep` every rhs() call, only call when the `getCurrentTimestep()` method is called.
When run_rhs is called (e.g. by CVODE), all rhs functions are called (rhs_se, rhs_si, rhs_fe, rhs_fi), so all counters need to be incremented.
Fix many includes
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.